/**
 *  全局数据共享（又叫做：状态管理）是为了解决组件之间数据共享的问题。
 *  在小程序中，可使用 mobx-miniprogram 配合 mobx-miniprogram-bindings 实现全局数据共享。其中：
 * 		mobx-miniprogram 用来创建 Store 实例对象
 * 		mobx-miniprogram-bindings 用来把 Store 中的共享数据或方法，绑定到组件或页面中使用
 */

/**
 * 创建 store 的实例对象
 */
import {action, observable} from "mobx-miniprogram";

export const store = observable({
	// 数据字段
	numA: 1,
	numB: 2,
	activeTabBarIndex: 0,
	// 计算属性
	get sum() {
		return this.numA + this.numB
	},
	// actions 方法，用来修改 store 中的数据
	updateNumA: action(function (step) {
		this.numA += step
	}),
	updateNumB: action(function (step) {
		this.numB += step
	}),
	updateActiveTabBarIndex: action(function (index) {
		this.activeTabBarIndex = index
	}),
});